Owing to the rapid development of the Internet, people are confronted with abundant online content, which makes it very time-consuming to select the needed information. The biggest challenge faced by most users/customers is the explosion of choices due to more and varied sources of information, higher number of devices, increase in real-time data, higher transparency and the rise of social media.
This is often referred to as the information overload problem. In order to solve it, recommender systems are widely investigated and applied to real systems. Recommender systems could be used for recommending choices to users in areas such as retail, media, sales and marketing, telecom, hospitality etc. They provide personalized choices to users by predicting their potential interests based on their historical choices. However, recommender systems in general face a variety of problems, such as:
Sparse data: In many large-scale applications, both number of items and number of consumers are large. If C denotes set of consumers and I denotes set of items, consumer-product interaction matrix could be represented by a |C|×|I| matrix R=(rij), such that
rij=k, k=1 . . . 5, if user I rated item j,
=0, Otherwise
In such cases, even when many events have been recorded, the consumer-product interaction matrix can still be extremely sparse, that is, there are very few elements in R whose value is not 0. This problem, commonly referred to as sparsity problem, has a major negative impact on effectiveness of methods to form associations between users/products. Because of sparsity, it is highly probable that similarity (or correlation) between two given users is zero, rendering many algorithms such as collaborative filtering, content-based analysis, spectral analysis etc. ineffective or partially effective, at best. Even for pairs of users that are positively correlated, such correlation measures may not be reliable. Further, forming associations between entities is sometimes difficult due to lack of availability of data when there is a variation in factors such as cost, location and availability of the entities. For instance, a product may belong to the same segment or category of products, however, they may have vastly different costs.
Directionality in choices: Predictability is a binary relationship with a direction attached to it i.e., it is between a pair of entities and is directed from the first one in the pair to the second. It is thus important to note that it is not a symmetric relationship i.e., if entity ‘A’ is associated to entity ‘B’, it does not mean that entity ‘B’ could also be associated to entity ‘A’ in a similar manner. To quote a more real world example, a person who has bought a car is likely to buy an accessory to it, not the other way round. Many collaborative filtering and content-based recommender systems fail to take directionality into account.
Time gap in choices: Due to the time gap between actions of user, there is a gap in availability of information. Such situations usually arise in case when a user performs an action after a fixed period of time, thus creating more data points for improvement in recommendation system, which could not have been possible at the time of performing the first action.
Till now, many recommendation algorithms such as collaborative filtering (CF), content-based analysis and spectral analysis, have been proposed. Matrix factorization algorithms have also been widely investigated by combining high scalability with predictive accuracy. Recommender systems represent consumer statistics as user or item graphs to study similarities and co-occurrences of entities in the statistical data. These user or item graphs illustrate consumer taste and behavior across various entities. Further, graph traversal methods are used to study these user or item graphs. More recently, some physical processes including mass diffusion, heat conduction, hydraulic flow and electric circuit analysis have been applied to design recommendation algorithms.
A paper ‘Identifying and Characterizing Key Nodes among Communities Based on Electrical-Circuit Networks’ by Fenghui Zhu (hereby noted as Zhu) discloses a method for simulating directed and non-directed networks using electrical component analysis. This paper proposes a method for simulating the non-directed network by placing a resistor with a specific electrical conductance at each of the edge of the non-directed network and for simulating a directed network by placing a diode with at each edge of the directed network. Further, using the laws of electric circuit topology, the effective affinity between any two nodes is calculated. The paper doesn't solve the problem of time gap in choices discussed above. Also, it seems to be limited in its applicability as it focuses mostly on product-user matrix and on the other hand the net affinity algorithm can be used even for attribute-user matrices.
Similarly, ‘Measuring User Similarity Using Electric Circuit Analysis: Application to Collaborative Filtering’ by Joonhyuk Yang uses the laws of electric circuit topology to calculate effective affinity between any two nodes. This paper further promotes the use of circuit elements such as capacitors and inductors for future use in simulating other types of graphs. Even though it envisions potential use of capacitors in future for circuit modeling, it suffers from the same problems contained in Zhu.
Techniques similar to the above prior arts have been discussed in multiple papers such as ‘Measuring and Extracting Proximity Graphs in Networks’, ‘Estimation from Relative Measurements: Error Bounds From Electrical Analogy’ and ‘Electricity Based External Similarity of Categorical Attributes’. However, all of them are limited in their approach to just focusing on conductance relationships rather than temporal factors. They do not address effectively the core issues discussed above such as sparse data and time-gap between the choices.
Thus, there exists a need for an improved recommender system algorithm for recommending exhaustive, relevant and personalized choices to users without being limited by issues such as scarcity of available data. Further, there is a need for developing recommendation systems that could solve the problems in availability of data arising due to time gap of choices.